package com.ewing.busi.web.mgr;

import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.ewing.busi.resource.model.WebResource;
import com.ewing.busi.resource.model.WebResourceSpec;
import com.ewing.busi.resource.service.WebResourceSpecService;
import com.ewing.core.jdbc.BaseDao;
import com.ewing.utils.IntegerUtils;

@Repository
public class WebResourceMgr {
  /**
   * 默认生成的该类的LOG记录器，使用slf4j组件。避免产生编译警告，使用protected修饰符。
   */
  protected final static Logger LOG = LoggerFactory.getLogger(WebResourceMgr.class);
  
  @Autowired
  private WebResourceSpecService webResourceSpecService;
  @Autowired
  private BaseDao baseDao;

  /***
   * 获取商品简介
   * @param resId
   * @param priceId
   * @return
   * created by Joeson on 2016年6月13日 下午11:31:20
   */
  public String getResourceDetail(Integer resId, Integer priceId){
    if(null == resId){
      return StringUtils.EMPTY;
    }
    
    WebResource resource = baseDao.findOne(resId, WebResource.class);
    if(null == resource){
      return StringUtils.EMPTY;
    }
    
    return getResourceDetail(resource.getName(), priceId);
  }
  
  /**
   * 获取商品简介
   * @param productName
   * @param priceId
   * @return
   * created by Joeson on 2016年6月13日 下午11:31:56
   */
  public String getResourceDetail(String productName, Integer priceId){
    if(IntegerUtils.nullOrZero(priceId)){
      return productName;
    }
    if(StringUtils.isEmpty(productName)){
      return StringUtils.EMPTY;
    }
    
    StringBuilder sb = new StringBuilder(StringUtils.isNotEmpty(productName) ? productName : StringUtils.EMPTY);
    List<WebResourceSpec> specList = webResourceSpecService.getSpecByPriceId(priceId);
    for(WebResourceSpec spec : specList){
      sb.append(" ").append(spec.getSpec());
    }
    
    return sb.toString();
  }
}
